(* Actually all about constraints! *)
signature VALUE =
sig
   type constraint
   val constraintLe : constraint * constraint -> bool
   val trueC : constraint
   val falseC : constraint
   val andC : constraint * constraint -> constraint
   val orC : constraint * constraint -> constraint
   val notC : constraint -> constraint
   val unsatisfiableC : constraint -> bool
   val validC : constraint -> bool
   val constraintString : constraint -> string
   val valueType : int			(* hack! *)
end
